home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 112 / EnigmaAmiga112CD.iso / dalla rivista / amiga.free / tableplug12 / rx / tvpaint.tpx < prev   
Text File  |  1999-10-11  |  1KB  |  68 lines

  1. /*
  2.  
  3.     tvpaint.tpx v1.0 © 1999 Esteve Boix
  4.  
  5.     This module uses TVPaint to load the image, scale it down
  6.     and save it as JPEG file.
  7.  
  8.     Tested only on the freeware version 3.59.
  9.  
  10.     Also deletes the 'info' file generated by TVPaint.
  11.  
  12.     Args: SIZEX SIZEY JPEG_COMPRESSION
  13.  
  14.     Where:
  15.  
  16.         SIZEX, SIZEY        Size in pixels of the thumbnail
  17.         JPEG_COMPRESSION    Well...
  18.  
  19. */
  20.  
  21. multiview="sys:utilities/multiview"     /* Modify if necessary */
  22.  
  23. options results
  24.  
  25. parse arg maxsizex maxsizey compression infile outfile
  26.  
  27. infile=strip(infile)
  28. outfile=strip(outfile)
  29.  
  30. address 'rexx_TVPaint'
  31. tv_LoadProject infile
  32.  
  33. if rc~=0 then exit
  34.  
  35. /* Obtain info about the image */
  36. tv_getwidth
  37. x = result
  38. tv_getheight
  39. y = result
  40.  
  41. /* ...and calculate the thumbnail resolution */
  42.  
  43. comp=trunc((maxsizex/x)*y)
  44.  
  45. if comp<=maxsizey then do
  46.  
  47.  
  48.     tv_resizepage maxsizex comp 2   /* Discovered after some attempts... */
  49.     end
  50.  
  51. else do
  52.  
  53.  
  54.     comp2=trunc((maxsizey/y)*x)
  55.  
  56.     tv_resizepage comp2 maxsizey 2  /* Discovered after some attempts... */
  57.  
  58. end
  59.  
  60. /* And save the image */
  61.  
  62. tv_savemode jpeg compression
  63. tv_savedisplay outfile
  64.  
  65. address command
  66. 'delete '||outfile||'.info'     /* Delete the info file */
  67.  
  68.